1. Technical Field of the Invention
The present invention relates in general to data communications. More specifically, the present invention relates to a network switch that has a relational lookup engine capable for both the port destination address look-up and the source address learning.
2. Description of the Related Art
A network switch performs switching functions in a data communication network. The switching function provided by the switch typically involves transferring information among entities of the network. Switched local area network (LAN) uses the network switch for filtering and forwarding data packets across network stations or other network nodes where each network node is connected to the network switch by a media. As the network switch functions as the traffic management system within the network, network switch is absolutely critical in the management of a computer network.
In order for the data to be transferred, it has become desirable for the switch to include a forwarding engine and associated media access control (MAC) address translation mechanism. U.S. Pat. No. 5,740,171 to Mazzola on Apr. 14, 1998 is an example of such an address translation mechanism that efficiently renders forwarding decisions for frames of data transported among ports of the network switch. The translation mechanism comprises a plurality of forwarding tables, each of which contains entries having unique index values that translate to selection signals for ports destined to receive the data frames wherein each port is associated with a unique index value and a VLAN identifier. The MAC address is combined with the VLAN identifier for searching the forwarding tables. Each table entry is directly accessed, however, by a key comprising a hash transformation of the MAC/VLAN quantity. The hash function used to find the index value maps a large address space into a much smaller address space. The problem with this type of address translation mechanism is that aliasing can occur. For example, a MAC address/VLAN pair can hash to the same table entry.
One solution to this limitation is disclosed in U.S. Pat. No. 6,266,705 to Ullum on Jul. 24, 2001 that includes a multi-page look up table and associated hashing technique. The MAC address and a VLAN identifier are transformed with a hash function to obtain a hash key. The hash key is an address pointing to a particular entry in the look up table. Similarly, U.S. Pat. No. 7,286,528 to Pannell on Oct. 23, 2007 provides an approach for address translation comprising the steps of hashing a destination MAC address of the frame, thereby producing a hashed MAC address and combining the hashed MAC address and the database number of the address database associated with the port that received the frame to produce a bucket address. Then identifying a plurality of bin addresses, wherein each of the bin addresses identifies a bin in the memory storing the MAC address and the port identifier that identifies one of the ports in the switch, searching the bins for a MAC address matching the destination MAC address, and transmitting the frame to the port identified by the port identifier stored in the bin storing a MAC address matching the destination MAC address. Such systems require bucket searches that are indeterminate in length and which are comparatively difficult to update and cannot be updated dynamically.
Hence, it can be seen, that there is a need for a network switch that eliminates the need to store MAC Addresses and Port Identifiers in bins and buckets. Further, the needed network switch directly accesses the port identifier by an input relation comprised of DBNUM and MAC address and reduces the overall data access time. The network switch would capable for both the destination address look-up and the source address learning. Further the network switch can be easily programmed to forward frame copies, to specified ports and to inhibit forwarding of undesirable frames.